1. Technical Field
The present invention generally relates to the field of cable data delivery systems and, more particularly, to a system and method for detecting, correcting and discarding corrupted Internet Protocol ("IP") packets in a cable data delivery system.
2. Description of Related Art
How Information Travels Across the Internet
The Internet is a series of inter-connected networks which facilitate the exchange of information, data, and files. Users connected to the Internet have access to the vast amount of information on these networks. A typical way of getting access to the Internet is through an online service server. Referring to FIG. 1, networks 110, 112, and 114 are connected to Internet 100 via online service servers 120, 122, and 124, respectively. The networks may be connected in many different ways, for example, network 114 is connected in a token ring while networks 110 and 112 are connected as Ethernet.RTM. networks. Another way of getting access to the Internet is through a dial-in Internet provider. For example, a user on his personal computer ("P.C.") 158 may access Internet 100 by dialing in to Internet provider 150 using his modem 152. Routers, which connect computers and networks, direct traffic in a network and on the Internet. Routers 160, 162, 164, and 166 examine packets of data that travel across the networks and the Internet to determine where the data is headed. Based on the data's destination, it routes it the most efficient way--generally to another router, which in turn sends it to the next router, and so on.
How TCP/IP Works
The Internet is a packet-switched network, that is, there is no single, unbroken connection between sender and receiver. Instead, when information is sent, it is broken into small packets, sent over many different routes at the same time, and then reassembled at the receiving end. Each packet is sent independently of one another through a series of switches or routers. Once all the packets arrive at the receiving end, they are recombined into their original, unified form. Two protocols are involved in breaking the data into packets, routing it across the Internet, and then recombining them on the other end: the Internet Protocol ("IP"), which handles the routing of the data; and the Transmission Control Protocol ("TCP"), which handles breaking the data into packets and recombining the packets on the receiving end.
TCP operates by taking data and breaking it up into packets. Each packet is given a header which contains a variety of information, such as in what order the packets should be assembled with other related packets. As TCP creates each packet, it also calculates and adds to the header a checksum, which is a number that TCP uses on the receiving end to determine whether any errors have been introduced into the packet during transmission. The checksum is based on the precise amount of data in the packet.
As the packets arrive at their destination, TCP calculates a checksum for each packet. It then compares this checksum with the checksum that has been sent in the packet. If the checksums do not match, TCP knows that the data in the packet has been corrupted during transmission. It then asks that the original packet be retransmitted. When all the noncorrupt packets are received, TCP assembles them into their original, unified form. See Preston Gralla, How the Internet Works, Ziff-Davis Press (1996), which is hereby incorporated by reference into this patent application.
Connecting to the Internet Using Cable Modems
As discussed above, there are many different ways to connect to the Internet, including connecting through local area networks ("LANs"), dial-in connections, cable modems, and special high-speed ISDN (Integrated Services Digital Network) lines. Cable modems may be used to access the Internet using coaxial cables that carry television signals. An advantage of using cable modems is cable modems may send and receive data at speed from 20 to 100 times faster than conventional modems.
Cable television ("CATV") transmission systems have been utilized since the 1980's for the transmission of data, point-to-point at T1 carrier rates of 1.544 Mbps in a CATV system environment. Scientific-Atlanta, Inc. introduced and marketed a product known as the Model 6404 Broadband Data Modem in the early 1980's. Two users, coupled to a CATV distribution network having a 0-54 MHz upstream or reverse path and a typical downstream path at frequencies above this range, can communicate with each other or with a telephone central office. The upstream and downstream channels are spaced at approximately 750 kHz spacing; the modulation scheme is 16-QAM. Each of two parties coupled to the CATV distribution network can communicate with each other, each having an upstream and a downstream radio frequency path. A Model 6440 frequency translator translates the upstream channel path frequency to the downstream channel path frequency for each party as necessary. Up to 24 voice or data telecommunication channels are provided by such equipment.
Data transmission services including digital audio services were also pioneered by Scientific-Atlanta, Inc. U.S. Pat. No. 5,239,540 describes a digital data delivery service for, for example, digital audio, game or software delivery to the home using quadrature partial response ("QPR") modulation. Also, Scientific-Atlanta, Inc. has recently applied for U.S. Patents in the field of data network access devices, for example, cable modems. These include U.S. patent application Ser. No. 08/627,062, filed Apr. 3, 1996, now U.S. Pat. No. 5,790,806, Ser. No. 08/732,668, filed Oct. 16, 1996, now U.S. Pat. No. 5,966,163, and U.S. patent application Ser. No. 08/818,037, entitled "System and Method for Providing Statistics for Flexible Billing in a Cable Environment" for Koperda et al., filed Mar. 14, 1997. The above applications describe the problem of providing multiple tiers or levels of service in a new combined telecommunications/CATV environment. These applications are hereby incorporated by reference into this patent application.
U.S. Pat. Nos. 5,347,304 and 5,586,121 describe an asymmetric network in which one path to a computer or work station is via a cable network such as a CATV network and the other path is via the telecommunications network. The '121 patent describes a network manager which handles or controls the forward (downstream) and return (upstream) communication paths to establish interactive full-duplex real-time network sessions between a host and a selected client device. Connection to the network is managed based on parameters such as the amount of times a device's channel requests have gone unfulfilled. The upstream channels are assessed as to quality based upon error rates, noise floor and signal-to-noise ratio. Channel quality monitoring for errors and signal-to-noise ratio is done transparently to the user and the applications. A failure in periodic upstream "heartbeat" messages at selected time intervals can indicate an upstream channel failure and necessitate a channel reassignment. These applications, however, do not appear to discuss data packet reconstruction.
Despite the several improvements in the art of providing cable data delivery services in recent years, there remains an opportunity to improve the processing of IP packets in a cable data delivery system. In particular, there exists a need for a method and apparatus for detecting, correcting and discarding corrupted IP packets in a cable data network.